$(document).ready(
	function(){ 
		$('#consoleDlg')[0].style.display = "none";
		
		$("#gridTable").jqGrid({   
            url:getContextPath()+"/base/alarmConfig/getAllAlarmConfigs.do",   
            datatype: "json",// "local",
            height: 350,   
            colNames:['序号','级别代码','级别名称','发送次数'],
			colModel:[
				{name:'id', index:'id', width:70, align:"left", hidden: true},
				{name:'alarmID', index:'alarmID', width:100, align:"left"},
				{name:'alarmName', index:'alarmName', width:100, align:"left", sortable:false},
		   		{name:'sendTimes', index:'sendTimes', width:100, align:"left", sortable:false}
			],
            sortname:'id',   
            // sortorder:'asc',
            viewrecords:true, 
            pgtext : "页 {0} 共 {1}页",
            recordtext:'记录 {0} - {1} 总记录数 {2}',  
            emptyrecords : "无数据",
            loadtext : "获取数据中...",
            rowNum: 15,//10,   
            loadonce: true,
            //rowList:[10,20,30],   
            jsonReader: { 
				repeatitems:false,   	 // 设置成false，在后台设置值的时候，可以乱序。且并非每个值都得设
				root: "rows",               // 数据行（默认为：rows）   
				total: "total",        // 总记录数   
				page: "page",            // 当前页   
				records: "records"
                //root:"dataRows",        // 数据行（默认为：rows）
                //page: "pages",    // 当前页
                //total: "totals",  // 总页数
                //records: "records",  // 总记录数
                //repeatitems : false    
            }, 
            //prmNames : {
				//search : "search",
				//rows:"pageModel.rows",
				//page:"pageModel.page",
				// sort:"page.orderBy",
				// order:"page.order"
			//}, 
            pager:"#gridPager",  
            caption: "报警设置 "
		});  
		$("#gridTable").jqGrid('navGrid','#gridPager',{edit:false,add:false,del:false});
		
		// 配置对话框
		$("#consoleDlg").dialog( {
			autoOpen : false,
			modal : true, // 设置对话框为模态（modal）对话框
			resizable : true,
			width : 600,
			buttons : { // 为对话框添加按钮
				"取消" : function() {
					$("#consoleDlg").dialog("close")
				},
				"添加" : addInfo,
				"保存" : updateInfo,
				"删除" : deleteInfo
			}
		});  
	}
)

		// getContextPath
		function getContextPath() {
    		var pathName = document.location.pathname;
    		var index = pathName.substr(1).indexOf("/");
    		var result = pathName.substr(0,index+1);
    		return result;
		};

		var openDialog4Adding = function() {  
			var consoleDlg = $("#consoleDlg");  
			var dialogButtonPanel = consoleDlg.siblings(".ui-dialog-buttonpane");  
			consoleDlg.find("input").removeAttr("disabled").val(""); 
			consoleDlg.find("select").removeAttr("disabled").val("no");
			consoleDlg.find("textarea").val("").removeAttr("disabled");
			dialogButtonPanel.find("button:not(:contains('取消'))").hide();  
			dialogButtonPanel.find("button:contains('添加')").show();  
			consoleDlg.dialog("option", "title", "添加报警级别 ").dialog("open");  
		};  
		
		var openDialog4Updating = function() {
			var consoleDlg = $("#consoleDlg");  
	        var dialogButtonPanel = consoleDlg.siblings(".ui-dialog-buttonpane");    
	        consoleDlg.find("input").val("").removeAttr("disabled"); 
	        consoleDlg.find("select").removeAttr("disabled");
	        consoleDlg.find("textarea").val("").removeAttr("disabled"); 
	        dialogButtonPanel.find("button:not(:contains('取消'))").hide();  
	        dialogButtonPanel.find("button:contains('保存')").show();  
	        consoleDlg.dialog("option", "title", "修改报警级别");  
	          
	        loadSelectedRowData();  
		};
		
		var openDialog4Deleting = function() {
			var consoleDlg = $("#consoleDlg");  
	        var dialogButtonPanel = consoleDlg.siblings(".ui-dialog-buttonpane");         
	        consoleDlg.find("input").attr("disabled", true); 
	        consoleDlg.find("select").attr("disabled", true); 
	        consoleDlg.find("textarea").attr("disabled", true); 
	        dialogButtonPanel.find("button:not(:contains('取消'))").hide();  
	        dialogButtonPanel.find("button:contains('删除')").show();  
	        consoleDlg.dialog("option", "title", "删除报警级别");  
	          
	        loadSelectedRowData();  
		};
		
		var loadSelectedRowData = function() {
			var selectedRowId = $("#gridTable").jqGrid("getGridParam", "selrow");
	    	//alert("selectRowID:"+selectedRowId);
	    	if (!selectedRowId) {
	    		alert("请先选择需要编辑的行!");
	    		return false;
	    	} else {
	    		var params = {"eid" : selectedRowId};
	    		// 从Server读取对应ID的JSON数据
	    		$.ajax( {
	    			type:"POST",   
	    			url : getContextPath()+"/base/alarmConfig/getAlarmConfigByID.do",
	    			data : params,
	    			dataType : "json",
	    			//contentType: "application/json",
	    			cache : false,
	    			async:false,
	    			error : function(textStatus, errorThrown) {
						alert("系统ajax交互错误: " + textStatus.responseText);
					},
					success : function(data, textStatus) {
						// 如果读取结果成功，则将信息载入到对话框中     
						var rowData = data;
						var consoleDlg = $("#consoleDlg");

						consoleDlg.find("#selectId").val(rowData.id);
						//alert("hiddenID1:"+consoleDlg.find("#selectId").val());
						consoleDlg.find("#alarmID").val(rowData.alarmID);
						consoleDlg.find("#alarmName").val(rowData.alarmName);
						consoleDlg.find("#sendTimes").val(rowData.sendTimes);
						
						// 根据新载入的数据将表格中的对应数据行一并更新一下
						var dataRow = {
								id : rowData.id, // 从Server端得到系统分配的id  
								alarmID : rowData.alarmID,
								alarmName : rowData.alarmName,
								sendTimes : rowData.sendTimes
						};

						$("#gridTable").jqGrid("setRowData", data.id, dataRow);

						// 打开对话框
						consoleDlg.dialog("open");
					}
	    		});
	    	}
		};
		
		var checkValid = function() {
	    	var consoleDlg = $("#consoleDlg");
	    	
	    	var alarmID = $.trim(consoleDlg.find("#alarmID").val()); 
	    	if (alarmID=="") {
	    		alert("'报警级别代码'为必填信息");
	    		return false;
	    	}
			var alarmName = $.trim(consoleDlg.find("#alarmName").val());
			if (alarmName=="") {
	    		alert("'报警级别名称'为必填信息");
	    		return false;
	    	}
			var sendTimes = $.trim(consoleDlg.find("#sendTimes").val());
			if (sendTimes=="") {
	    		alert("'发送次数'为必填信息");
	    		return false;
	    	}
	    }
		
		var addInfo = function() {
			var consoleDlg = $("#consoleDlg");

			if (checkValid()==false) return false;
			
			var alarmID = $.trim(consoleDlg.find("#alarmID").val()); 
			var alarmName = $.trim(consoleDlg.find("#alarmName").val());
			var sendTimes = $.trim(consoleDlg.find("#sendTimes").val());
			
			var params = {
					"alarmID" : alarmID,
					"alarmName" : alarmName,
					"sendTimes" : sendTimes
			};

			var actionUrl = getContextPath()+"/base/alarmConfig/addAlarmConfig.do";

			$.ajax( {
					type: "POST",
					url : actionUrl,
					data : params,
					dataType : "json",
					cache : false,
					error : function(textStatus, errorThrown) {
						alert("系统ajax交互错误: " + textStatus);
					},
					success : function(data, textStatus) {
						if (data != null) {
							var dataRow = {
									id : data.id, // 从Server端得到系统分配的id  
									alarmID : data.alarmID,
									alarmName : data.alarmName,
									sendTimes : data.sendTimes
							};

							var srcrowid = $("#gridTable").jqGrid("getGridParam",
									"selrow");

							if (srcrowid) {
								$("#gridTable").jqGrid("addRowData",
										data.id, dataRow, "before",
										srcrowid);

							} else {
								$("#gridTable").jqGrid("addRowData",
										data.id, dataRow, "first");
							}
							consoleDlg.dialog("close");

							alert("报警级别添加操作成功!");

						} else {
							alert("[级别代码、级别名称]重复，添加操作失败!");
						}
					}
				});  
		};
		
		var updateInfo = function() {
			var consoleDlg = $("#consoleDlg");

			if (checkValid()==false) return false;
			
			var id = $.trim(consoleDlg.find("#selectId").val()); 
			var alarmID = $.trim(consoleDlg.find("#alarmID").val()); 
			var alarmName = $.trim(consoleDlg.find("#alarmName").val());
			var sendTimes = $.trim(consoleDlg.find("#sendTimes").val());
			
			var params = {
					"id" : id,
					"alarmID" : alarmID,
					"alarmName" : alarmName,
					"sendTimes" : sendTimes
			};
			var actionUrl = getContextPath()+"/base/alarmConfig/updateAlarmConfig.do";

			$.ajax( {
				type : "POST",
				url : actionUrl,
				data : params,
				dataType : "json",
				cache : false,
				error : function(textStatus, errorThrown) {
					alert("系统ajax交互错误: " + textStatus);
				},
				success : function(data, textStatus) {
					if (data != null) {
						var dataRow = {
								id : data.id, // 从Server端得到系统分配的id  
								alarmID : data.alarmID,
								alarmName : data.alarmName,
								sendTimes : data.sendTimes
						};
						alert("报警级别更新成功!");
						consoleDlg.dialog("close");
						$("#gridTable").jqGrid("setRowData", data.id, dataRow);
					} else {
						alert("[级别代码、级别名称]重复，修改操作失败!");
					}
				}
			});
		};
		
		var deleteInfo = function() {
			var consoleDlg = $("#consoleDlg");  
			
			var r=confirm("确认要删除该信息吗？");
			if (r==false) {
				consoleDlg.dialog("close"); 
				return false;
			}
	        
			var pId = $.trim(consoleDlg.find("#selectId").val());
	        var params = {"eID" : pId};  
	        var actionUrl = getContextPath() + "/base/alarmConfig/deleteAlarmConfig.do";
	        $.ajax({  
	        	type : "POST",
	            url : actionUrl,  
	            data : params,  
	            //dataType : "json",  
	            cache : false,  
	            error : function(textStatus, errorThrown) {  
	                alert("系统ajax交互错误: " + textStatus);  
	            },  
	            success : function(data, textStatus) {  
	                if (data == "success") {  
	                    $("#gridTable").jqGrid("delRowData", pId);  
	                    consoleDlg.dialog("close");  
	                    alert("报警级别删除成功!");  
	                } else {  
	                    alert("删除操作失败!");  
	                }  
	            }  
	        });  
		};